package h0805;

import java.util.*;

/**
 * @author 不知名帅哥
 * @version 1.0
 * @description 比较两个版本号的大小
 * @date 2024/8/5 23:17
 */
public class CompareVersionId2 {
    // 输入获取
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        String v1 = sc.next();
        String v2 = sc.next();

        System.out.println(getResult(v1, v2));
    }

    // 算法入口
    public static int getResult(String v1, String v2) {
        String[] arr1 = convert(v1);
        String[] arr2 = convert(v2);

        int n = Math.max(arr1.length, arr2.length);

        for (int i = 0; i < n; i++) {
            String tmp1 = arr1.length > i ? arr1[i] : "0";
            String tmp2 = arr2.length > i ? arr2[i] : "0";

            try {
                int i1 = Integer.parseInt(tmp1);
                int i2 = Integer.parseInt(tmp2);
                if (i1 != i2) return i1 > i2 ? 1 : -1;
            } catch (Exception e) {
                int res = tmp1.compareTo(tmp2);
                if (res != 0) return res > 0 ? 1 : -1;
            }
        }

        return 0;
    }

    public static String[] convert(String version) {
        // 注意split方法入参会被当成正则，因此这里不能直接使用"."，因为"."在正则中是元字符，有特殊含义，我们应该使用转义后的"\\."
        return Arrays.stream(version.split("\\.")).map(sub -> {
            //TODO 这里^意思是匹配字符开头
            // **锚点**：- `^`：匹配字符串的开始。 - `$`：匹配字符串的结束。
            //注意要跟[^xxxx]区分 TODO **反义（`[^...]`）**：匹配任何不在字符集中的字符。
            String s = sub.replaceAll("^0+", ""); // 去除前导0
            return "".equals(s) ? "0" : s; // 如果是"0"，去除前导0后就变为了""，需要做特殊处理
        }).toArray(String[]::new);
    }
}
